Methods and apparatus to collect distributed user information for media impressions and search terms

ABSTRACT

Disclosed examples involve decoding information from a mobile device into a plurality of encrypted identifiers identifying at least one of the mobile device or a user of the mobile device, sending ones of the encrypted identifiers to corresponding database proprietors, receiving a plurality of user information corresponding to the ones of the encrypted identifiers from the corresponding database proprietors, and associating the plurality of user information with at least one of a search term collected at the mobile device or a media impression logged for media presented at the mobile device.

RELATED APPLICATIONS

This is an international patent application of Australian applicationno. 2013204953, filed on Apr. 12, 2013, U.S. provisional application No.61/697,597, filed on Sep. 6, 2012, and U.S. provisional application No.61/695,169, filed on Aug. 30, 2012, which are hereby incorporated hereinby reference in their entireties.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to monitoring media and, moreparticularly, to methods and apparatus to collect distributed userinformation for media impressions and search terms.

BACKGROUND

Traditionally, audience measurement entities determine audienceengagement levels for media programming based on registered panelmembers. That is, an audience measurement entity enrolls people whoconsent to being monitored into a panel. The audience measurement entitythen monitors those panel members to determine media programs (e.g.,television programs or radio programs, movies, DVDs, etc.) exposed tothose panel members. In this manner, the audience measurement entity candetermine exposure measures for different media content based on thecollected media measurement data.

Techniques for monitoring user access to Internet resources such as webpages, advertisements and/or other content has evolved significantlyover the years. Some known systems perform such monitoring primarilythrough server logs. In particular, entities serving content on theInternet can use known techniques to log the number of requests receivedfor their content at their server.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an example system to collect user information fromdistributed database proprietors for associating with impressions ofmedia presented at mobile devices.

FIG. 2 depicts an example apparatus to encrypt device and/or useridentifiers, and encode the encrypted device and/or user identifiersinto an application campaign rating (ACR) identifier.

FIG. 3 depicts an example apparatus to decode encrypted device and/oruser identifiers from the ACR identifier of FIG. 2, and send theencrypted device and/or user identifiers to corresponding databaseproprietors to request user information associated with the encrypteddevice and/or user identifiers.

FIG. 4 depicts the example apparatus of FIG. 3 decoding an ACRidentifier having some empty fields that do not contain any deviceand/or user identifiers.

FIG. 5 is a flow diagram representative of example machine readableinstructions that may be executed to collect media identifiers anddevice and/or user identifiers at mobile devices.

FIG. 6 is a flow diagram representative of example machine readableinstructions that may be executed to encrypt device and/or useridentifiers, and encode the encrypted device and/or user identifiersinto the ACR identifier of FIG. 2.

FIG. 7 is a flow diagram representative of example machine readableinstructions that may be executed to decode encrypted device and/or useridentifiers from the ACR identifier of FIG. 2, and collect userinformation associated with the encrypted device and/or user identifiersfrom corresponding database proprietors.

FIG. 8 is an example processor system that may be used to execute theexample instructions of FIGS. 5-7, 11, and 15 to implement exampleapparatus and systems disclosed herein.

FIG. 9 depicts another example system to collect user information fromdistributed database proprietors for associating with impressions ofmedia presented at mobile devices.

FIG. 10 depicts yet another example system to collect user informationfrom distributed database proprietors for associating with impressionsof media presented at mobile devices.

FIG. 11 is a flow diagram representative of example machine readableinstructions that may be executed to collect media identifiers anddevice and/or user identifiers at a media publisher.

FIG. 12 is an example system to collect user information fromdistributed database proprietors for associating with search termsprovided by users at mobile devices.

FIG. 13 depicts another example system to collect user information fromdistributed database proprietors for associating with search termsprovided by users at mobile devices.

FIG. 14 depicts yet another example system to collect user informationfrom distributed database proprietors for associating with search termsprovided by users at mobile devices.

FIG. 15 is a flow diagram representative of example machine readableinstructions that may be executed to collect search terms and deviceand/or user identifiers at a search provider.

DETAILED DESCRIPTION

Techniques for monitoring user access to Internet resources such as webpages, advertisements and/or other content has evolved significantlyover the years. At one point in the past, such monitoring was doneprimarily through server logs. In particular, entities serving contenton the Internet would log the number of requests received for theircontent at their server. Basing Internet usage research on server logsis problematic for several reasons. For example, server logs can betampered with either directly or via zombie programs which repeatedlyrequest content from the server to increase the server log counts.Secondly, content is sometimes retrieved once, cached locally and thenrepeatedly viewed from the local cache without involving the server inthe repeat viewings. Server logs cannot track these views of cachedcontent. Thus, server logs are susceptible to both over-counting andunder-counting errors.

The inventions disclosed in Blumenau, U.S. Pat. No. 6,108,637,fundamentally changed the way Internet monitoring is performed andovercame the limitations of the server side log monitoring techniquesdescribed above. For example, Blumenau disclosed a technique whereinInternet content to be tracked is tagged with beacon instructions. Inparticular, monitoring instructions are associated with the HTML of thecontent to be tracked. When a client requests the content, both thecontent and the beacon instructions are downloaded to the client. Thebeacon instructions are, thus, executed whenever the content isaccessed, be it from a server or from a cache.

The beacon instructions cause monitoring data reflecting informationabout the access to the content to be sent from the client thatdownloaded the content to a monitoring entity. Typically, the monitoringentity is an audience measurement entity that did not provide thecontent to the client and who is a trusted third party for providingaccurate usage statistics (e.g., The Nielsen Company, LLC).Advantageously, because the beaconing instructions are associated withthe content and executed by the client browser whenever the content isaccessed, the monitoring information is provided to the audiencemeasurement company irrespective of whether the client is a panelist ofthe audience measurement company.

It is useful, however, to link demographics and/or other userinformation to the monitoring information. To address this issue, theaudience measurement company establishes a panel of users who haveagreed to provide their demographic information and to have theirInternet browsing activities monitored. When an individual joins thepanel, they provide detailed information concerning their identity anddemographics (e.g., gender, race, income, home location, occupation,etc.) to the audience measurement company. The audience measuremententity sets a cookie on the panelist computer that enables the audiencemeasurement entity to identify the panelist whenever the panelistaccesses tagged content and, thus, sends monitoring information to theaudience measurement entity.

Since most of the clients providing monitoring information from thetagged pages are not panelists and, thus, are unknown to the audiencemeasurement entity, it is necessary to use statistical methods to imputedemographic information based on the data collected for panelists to thelarger population of users providing data for the tagged content.However, panel sizes of audience measurement entities remain smallcompared to the general population of users. Thus, a problem ispresented as to how to increase panel sizes while ensuring thedemographics data of the panel is accurate.

There are many database proprietors operating on the Internet. Thesedatabase proprietors provide services to large numbers of subscribers.In exchange for the provision of the service, the subscribers registerwith the proprietor. As part of this registration, the subscribersprovide detailed demographic information. Examples of such databaseproprietors include social network providers such as Facebook, Myspace,etc. These database proprietors set cookies on the computers of theirsubscribers to enable the database proprietor to recognize the user whenthey visit their website.

The protocols of the Internet make cookies inaccessible outside of thedomain (e.g., Internet domain, domain name, etc.) on which they wereset. Thus, a cookie set in the amazon.com domain is accessible toservers in the amazon.com domain, but not to servers outside thatdomain. Therefore, although an audience measurement entity might find itadvantageous to access the cookies set by the database proprietors, theyare unable to do so. In addition, apps that run on mobile deviceplatforms do not use cookies in the same way as web browsers. Althoughapps do present media that is worthy of impression tracking, priortechniques that use cookie-based approaches for tracking such mediaimpressions are unusable in the app environment context.

In view of the foregoing, an audience measurement company would like toleverage the existing databases of database proprietors to collect moreextensive Internet usage and demographic data and/or user data forassociating with media impressions tracked on devices that execute appsthat do not employ cookies which are more commonly used in web browsers.However, the audience measurement entity is faced with several problemsin accomplishing this end. For example, a problem is presented as to howto access the data of the database proprietors without compromising theprivacy of the subscribers, the panelists, or the proprietors of thetracked content. Another problem is how to access this data given thetechnical restrictions imposed by app software platforms of mobiledevices that do not employ cookies.

Example methods, apparatus and/or articles of manufacture disclosedherein enable tracking media impressions for media presented by mobiledevice apps that execute on mobile devices, without needing to rely oncookies to track such media impressions. In this manner, an audiencemeasurement entity (AME) can track media impressions on mobile deviceson which apps that do not employ cookies have higher usage rates thanweb browsers that do employ cookies. Examples disclosed herein alsoprotect privacies of users by encrypting identification information insuch a way that personally-identifying information is not revealed tothe AME. Examples disclosed herein accomplish this by using anapplication campaign rating (ACR) identifier (ID) that includes one ormore encrypted device and/or user identifier(s) (i.e., device/useridentifier(s)) retrieved from a mobile device. The one or more encrypteddevice/user identifier(s) can then be used to retrieve user informationfor a user of the mobile device by sending the one or more encrypteddevice/user identifier(s) to one or more corresponding databaseproprietors that store user information for its registered users. In theillustrated examples, to protect users' privacies, the AME does not havekeys to decrypt the encrypted device/user identifiers, and each databaseproprietor has only its respective key(s) useable to decrypt onlydevice/user identifier(s) pertaining to its services (e.g., wirelesscarrier services, social networking services, email services, mobilephone ecosystem app or media services, etc.). In this manner,personally-identifying information for particular services will not berevealed to the AME or to just any database proprietor, but only to thedatabase proprietor that provides the particular service.

In examples disclosed herein, when an audience measurement entityreceives an ACR ID including one or more encrypted device/useridentifier(s), the audience measurement entity can request userinformation from one or more partnered database proprietors for theencrypted device/user identifier(s). In this manner, the partnereddatabase proprietor(s) can provide user information to the audiencemeasurement entity for the encrypted device/user identifier(s), andassociate the user information with one or more media ID's of mediapresented by app(s) on one or more mobile device(s). Because theidentification of users or client mobile devices is done with referenceto enormous databases of users far beyond the quantity of personspresent in a conventional audience measurement panel, the data developedfrom this process is extremely accurate, reliable and detailed. In someexamples, by agreeing to participate in concerted audience measurementefforts, the partnered database proprietors are provided with audienceuser information and exposure information collected by other partnereddatabase proprietors. In this manner, partnered database proprietors cansupplement their own audience exposure metrics with information providedby other partnered database proprietors.

Example methods, apparatus, and articles of manufacture disclosed hereincan be used to determine content impressions, advertisement impressions,content exposure, and/or advertisement exposure using user information,which is distributed across different databases (e.g., different websiteowners, service providers, etc.) on the Internet. Not only do examplemethods, apparatus, and articles of manufacture disclosed herein enablemore accurate correlation of Internet media exposure to userinformation, but they also effectively extend panel sizes andcompositions beyond persons participating in the panel of an audiencemeasurement entity and/or a ratings entity to persons registered inother Internet databases such as the databases of wireless servicecarriers, mobile software/service providers, social medium sites (e.g.,Facebook, Twitter, Google, etc.), and/or any other Internet sites suchas Yahoo!, MSN, Apple iTunes, Experian, etc. This extension effectivelyleverages the media impression tracking capabilities of the audiencemeasurement entity and the use of databases of non-AME entities such associal media and other websites to create an enormous, demographicallyaccurate panel that results in accurate, reliable measurements ofexposures to Internet content such as advertising and/or programming.

Traditionally, audience measurement entities (also referred to herein as“ratings entities”) determine demographic reach for advertising andmedia programming based on registered panel members. That is, anaudience measurement entity enrolls people that consent to beingmonitored into a panel. During enrollment, the audience measuremententity receives demographic information from the enrolling people sothat subsequent correlations may be made between advertisement/mediaexposure to those panelists and different demographic markets. Unliketraditional techniques in which audience measurement entities relysolely on their own panel member data to collect demographics-basedaudience measurement, example methods, apparatus, and/or articles ofmanufacture disclosed herein enable an audience measurement entity toshare demographic information with other entities that operate based onuser registration models. As used herein, a user registration model is amodel in which users subscribe to services of those entities by creatingan account and providing demographic-related information aboutthemselves. Sharing of demographic information associated withregistered users of database proprietors enables an audience measuremententity to extend or supplement their panel data with substantiallyreliable demographics information from external sources (e.g., databaseproprietors), thus extending the coverage, accuracy, and/or completenessof their demographics-based audience measurements. Such access alsoenables the audience measurement entity to monitor persons who would nototherwise have joined an audience measurement panel. Any entity having adatabase identifying demographics of a set of individuals may cooperatewith the audience measurement entity. Such entities may be referred toas “database proprietors” and include entities such as wireless servicecarriers, mobile software/service providers, social medium sites (e.g.,Facebook, Twitter, Google, etc.), and/or any other Internet sites suchas Yahoo!, MSN, Apple iTunes, Experian, etc.

Example methods, apparatus, and/or articles of manufacture disclosedherein may be implemented by an audience measurement entity (e.g., anyentity interested in measuring or tracking audience exposures toadvertisements, content, and/or any other media) in cooperation with anynumber of database proprietors such as online web services providers todevelop online media exposure metrics. Such database proprietors/onlineweb services providers may be wireless service carriers, mobilesoftware/service providers, social network sites (e.g., Facebook,Twitter, MySpace, etc.), multi-service sites (e.g., Yahoo!, Google,Experian, etc.), online retailer sites (e.g., Amazon.com, Buy.com,etc.), and/or any other web service(s) site that maintains userregistration records.

In some examples, to increase the likelihood that measured viewership isaccurately attributed to the correct demographics, example methods,apparatus, and/or articles of manufacture disclosed herein use userinformation located in the audience measurement entity's records as wellas user information located at one or more database proprietors (e.g.,web service providers) that maintain records or profiles of users havingaccounts therewith. In this manner, example methods, apparatus, and/orarticles of manufacture disclosed herein may be used to supplement userinformation maintained by a ratings entity (e.g., an audiencemeasurement company such as The Nielsen Company of Schaumburg, Ill.,United States of America, that collects media exposure measurements,demographics, and/or other user information) with user information fromone or more different database proprietors (e.g., web serviceproviders).

The use of demographic information from disparate data sources (e.g.,high-quality demographic information from the panels of an audiencemeasurement company and/or registered user data of web serviceproviders) results in improved reporting effectiveness of metrics forboth online and offline advertising campaigns. Example techniquesdisclosed herein use online registration data to identify demographicsof users, and/or other user information, and use server impressioncounts, and/or other techniques to track quantities of impressionsattributable to those users. Online web service providers such aswireless service carriers, mobile software/service providers, socialnetwork sites (e.g., Facebook, Twitter, MySpace, etc.), multi-servicesites (e.g., Yahoo!, Google, Experian, etc.), online retailer sites(e.g., Amazon.com, Buy.com, etc.), etc. (collectively and individuallyreferred to herein as online database proprietors) maintain detaileddemographic information (e.g., age, gender, geographic location, race,income level, education level, religion, etc.) collected via userregistration processes. An impression corresponds to a home orindividual having been exposed to the corresponding media content and/oradvertisement. Thus, an impression represents a home or an individualhaving been exposed to an advertisement or content or group ofadvertisements or content. In Internet advertising, a quantity ofimpressions or impression count is the total number of times anadvertisement or advertisement campaign has been accessed by a webpopulation (e.g., including number of times accessed as decreased by,for example, pop-up blockers and/or increased by, for example, retrievalfrom local cache memory).

FIG. 1 depicts an example system 100 to collect user information (e.g.,user information 102 a and 102 b) from distributed database proprietors104 a and 104 b for associating with impressions of media presented at amobile device 106. In the illustrated examples, user information or userdata includes one or more of demographic data, purchase data, and/orother data indicative of user activities, behaviors, and/or preferencesrelated to information accessed via the Internet, purchases, mediaaccessed on electronic devices, physical locations (e.g., retail orcommercial establishments, restaurants, venues, etc.) visited by users,etc. Examples disclosed herein are described in connection with a mobiledevice, which may be a mobile phone, a mobile communication device, atablet, a gaming device, a portable media presentation device, etc.However, examples disclosed herein may be implemented in connection withnon-mobile devices such as internet appliances, smart televisions,internet terminals, computers, or any other device capable of presentingmedia received via network communications.

In the illustrated example of FIG. 1, to track media impressions on themobile device 106, an audience measurement entity (AME) 108 partnerswith or cooperates with an app publisher 110 to download and install adata collector 112 on the mobile device 106. The app publisher 110 ofthe illustrated example may be a software app developer that developsand distributes apps to mobile devices and/or a distributor thatreceives apps from software app developers and distributes the apps tomobile devices. In the illustrated example, to download and install thedata collector 112 on the mobile device 106, the app publisher 110downloads an app install package 114 to the mobile device 106 when themobile device 106 requests a purchased or free app program 116. The apppublisher 110 locates the requested app program 116 and the datacollector 112 in the app install package 114, and then it sends the appinstall package 114 to the mobile device 106 for installing the appprogram 116 and the data collector 112. In some examples, the apppublisher 110 may first obtain the consent of a user of the mobiledevice 106 to participate in a media tracking program before sending thedata collector 112 for installation on the mobile device 106.

In the illustrated example, the app program 116 is a game entitled“Angry Bats” that presents media 118 received from a media publisher120. The media 118 may be an advertisement, video, audio, text, agraphic, a web page, news, educational media, entertainment media, orany other type of media. In the illustrated example, a media ID 122 isprovided in the media 118 to enable identifying the media 118 so thatthe AME 108 can credit the media 118 with media impressions when themedia 118 is presented on the mobile device 106 or any other device thatis monitored by the AME 108.

In the illustrated example, the AME 108 provides the data collector 112to the app publisher 110 for packaging with the app program 116 in theapp install package 114. In some examples, the app publisher 110provides the data collector 112 as a program separate from the appprogram 116. In other examples, the app publisher 110 compiles orotherwise includes the data collector 112 in the app program 116 ratherthan installing the data collector 112 as a program separate from theapp program 116. The data collector 112 of the illustrated exampleincludes instructions (e.g., Java, java script, or any other computerlanguage or script) that, when executed by the mobile device 106, causethe mobile device 106 to collect the media ID 122 of the media 118presented by the app program 116 and/or the mobile device 106, and tocollect one or more device/user identifier(s) 124 stored in the mobiledevice 106. The device/user identifier(s) 124 of the illustrated exampleinclude identifiers that can be used by corresponding ones of thepartner database proprietors 104 a-b to identify the user or users ofthe mobile device 106, and to locate user information 102 a-bcorresponding to the user(s). For example, the device/user identifier(s)124 may include hardware identifiers (e.g., an international mobileequipment identity (IMEI), a mobile equipment identifier (MEID), a mediaaccess control (MAC) address, etc.), an app store identifier (e.g., aGoogle Android ID, an Apple ID, an Amazon ID, etc.), an open sourceunique device identifier (OpenUDID), an open device identificationnumber (ODIN), a login identifier (e.g., a username), an email address,user agent data (e.g., application type, operating system, softwarevendor, software revision, etc.), third-party service identifiers (e.g.,advertising service identifiers, device usage analytics serviceidentifiers, demographics collection service identifiers), etc. In someexamples, fewer or more device/user identifier(s) 124 may be used. Inaddition, although only two partner database proprietors 104 a-b areshown in FIG. 1, the AME 108 may partner with any number of partnerdatabase proprietors to collect distributed user information (e.g., theuser information 102 a-b).

In some examples, the types of device/user identifiers 124 are differentfrom device to device depending on the type of device, the manufacturerof the device, the software installed on the device, etc. For example, amobile device having cellular 2G, 3G, and/or 4G capabilities will havean assigned IMEI number. However, a mobile device capable of Wi-Fi, butnot having cellular communication capabilities, will not have an IMEInumber. As such, one or more other parameter(s) of the Wi-Fi mobiledevice may be used as the device/user identifiers 124. Such otherparameters may include, for example, a MAC address, a login ID, or anyother identifier or information available to the Wi-Fi capable deviceand that is not specific to cellular communications.

By being able to select or access multiple different types ofdevice/user identifiers 124, the AME 108 increases the opportunities forcollecting corresponding user information. For example, the AME 108 isnot tied to requesting user information from a single source (e.g., onlyone of the partner database proprietors 104 a-b). Instead, the AME 108can leverage relationships with multiple partner database proprietors(e.g., the partner database proprietors 104 a-b). If one or some partnerdatabase proprietors are unable or become unwilling to share user data,the AME 108 can request the user data from one or more other partnerdatabase proprietor(s).

In some examples, the mobile device 106 may not allow access toidentification information stored in the mobile device 106. For suchinstances, the disclosed examples enable the AME 108 to store anAME-provided identifier (e.g., an identifier managed and tracked by theAME 108) in the mobile device 106 to track media impressions on themobile device 106. For example, the AME 108 may provide instructions inthe data collector 112 to set an AME-provided identifier in memory spaceaccessible by and/or allocated to the app program 116, and the datacollector 112 uses the identifier as a device/user identifier 124. Insuch examples, the AME-provided identifier set by the data collector 112persists in the memory space even when the app program 116 and the datacollector 112 are not running. In this manner, the same AME-providedidentifier can remain associated with the mobile device 106 for extendeddurations. In some examples in which the data collector 112 sets anidentifier in the mobile device 106, the AME 108 may recruit a user ofthe mobile device 106 as a panelist, and may store user informationcollected from the user during a panelist registration process and/orcollected by monitoring user activities/behavior via the mobile device106 and/or any other device used by the user and monitored by the AME108. In this manner, the AME 108 can associate user information of theuser (from panelist data stored by the AME 108) with media impressionsattributed to the user on the mobile device 106.

In the illustrated example, the data collector 112 sends the media ID122 and the one or more device/user identifier(s) 124 as collected data126 to the app publisher 110. Alternatively, the data collector 112 maybe configured to send the collected data 126 to another collectionentity (other than the app publisher 110) that has been contracted bythe AME 108 or is partnered with the AME 108 to collect media ID's(e.g., the media ID 122) and device/user identifiers (e.g., thedevice/user identifier(s) 124) from mobile devices (e.g., the mobiledevice 106). In the illustrated example, the app publisher 110 (or acollection entity) generates an ACR ID 128 that includes the device/useridentifier(s) 124, and the app publisher (or a collection entity) sendsthe media ID 122 and the ACR ID 128 as impression data 130 to a server132 at the AME 108. The impression data 130 of the illustrated examplemay include one media ID 122 and one ACR ID 128 to report a singleimpression of the media 118, or it may include numerous media ID's andACR ID's based on numerous instances of collected data (e.g., thecollected data 126) received from the mobile device 106 and/or othermobile devices to report multiple impressions of media. In theillustrated example, the server 130 of the illustrated example storesthe impression data 130 in an AME media impressions store 134 (e.g., adatabase or other data structure). Subsequently, the AME 108 sends thedevice/user identifier(s) 124 from the ACR ID 128 to correspondingpartner database proprietors (e.g., the partner database proprietors 104a-b) to receive user information (e.g., the user information 102 a-b)corresponding to the device/user identifier(s) 124 from the partnerdatabase proprietors so that the AME 108 can associate the userinformation with corresponding media impressions of media (e.g., themedia 118) presented at mobile devices (e.g., the mobile device 106).

Although the above description describes the app publisher 110 (or othercollection entity) as generating the ACR ID 128, in other examples, thedata collector 112 at the mobile device 106 generates the ACR ID 128that includes the device/user identifier(s) 124. In such examples, thedata collector 112 sends the ACR ID 128 to the app publisher 110 (orother collection entity) in the collected data 126.

In the illustrated example, to protect the privacy of the user of themobile device 106, the device/user identifier(s) 124 is/are encryptedbefore sending it/them to the AME 108 in the ACR ID 128. In theillustrated examples, the encryption process is performed so thatneither the app publisher (110) (or other collection entity) nor the AME108, or any other intermediate entity, can access the device/useridentifier(s) 124 before they are sent to corresponding partner databaseproprietors (e.g., the partner database proprietors 104 a-b). To encryptthe device/user identifier(s) 124, each partner database proprietor(e.g., the partner database proprietors 104 a-b) for whichidentification information can be retrieved from the mobile device 106is provided with one or more encryption keys specific to that partnerdatabase proprietor. In this manner, each partner database proprietorhas a different set of keys so that each partner database proprietor canonly recover one or more of the device/user identifier(s) 124 thatpertain(s) to it. For example, a wireless service carrier can onlyretrieve an IMEI or MEID number, a social network site can only retrievea login username corresponding to its social network services, etc.Copies of the one or more encryption keys can be provided to the apppublisher 110 in an encryption algorithm (e.g., an SSH-1 encryptionalgorithm). In the illustrated example, the AME 108 provides theencryption algorithm and the encryption keys to the app publisher 110 asan encryption software package or bundle (e.g., an encryptor 202 of FIG.2) from which the app publisher 110 cannot recover or extract theencryption keys. In this manner, the app publisher 110 is not able toaccess the device/user identifier(s) 124. In other examples, the apppublisher 110 is able to access the device/user identifier(s) 124 ifauthorized by a user of the mobile device 106 (e.g., during installationof the app program 116). In such examples, the app publisher 110 maystill encrypt the device/user identifier(s) 124 before sending them tothe AME 108.

In the illustrated examples, the encryption algorithm is also providedwith partner database proprietor identifiers along with correspondingones of the encryption keys for each of the partner database proprietors(e.g., the partner database proprietors 104 a-b). When encrypting thedevice/user identifier(s) 124, the encryption algorithm can append,prepend, concatenate, or otherwise associate corresponding partnerdatabase proprietor identifiers to or with the encrypted device/useridentifier(s) (e.g., encrypted device/user identifier(s) 208 a-b of FIG.2) so that the AME 108 can access the partner database proprietoridentifiers, without decrypting the encrypted device/user identifier(s),to identify which of the encrypted device/user identifier(s) correspondsto which partner database proprietor. In this manner, the AME 108 candeliver the encrypted device/user identifier(s) to corresponding partnerdatabase proprietor(s) even though it cannot decrypt the device/useridentifier(s) 124.

In some examples, the app publisher 110 can run the encryption softwareat one of its servers or computers that receives the collected data 126from the mobile device 106. In such examples, the media ID 122 and thedevice/user identifier(s) 124 are sent by the mobile device 106 as thecollected data 126 via a secure connection between the encryptionsoftware running at the app publisher 110 and the mobile device 106. Inthis manner, the device/user identifier(s) 124 is/are not intercepted bythe app publisher 110 before they are encrypted using the encryptionkeys corresponding to the different database proprietors.

In other examples, the encryption software to encrypt the device/useridentifier(s) 124 is provided in the data collector 112 so that the datacollector 112 can encrypt the device/user identifier(s) 124 at themobile device 106 before sending encrypted device/user identifier(s) tothe app publisher 110 (or other collection entity). In some examples inwhich the data collector 112 encrypts the device/user identifier(s) 124,the data collector 112 also encodes the encrypted device/useridentifier(s) into an ACR ID (e.g., the ACR ID 128). In such examples,the data collector 112 sends the ACR ID 128 and the media ID 122 to theapp publisher 110 (or other collection entity) in the collected data126.

After the AME 108 receives the ACR ID 128 including the device/useridentifier(s) 124 in encrypted format, the AME 108 sends encrypteddevice/user identifier logs 136 a-b to corresponding partner databaseproprietors (e.g., the partner database proprietors 104 a-b). In theillustrated example, each of the encrypted device/user identifier logs136 a-b may include a single encrypted device/user identifier, or it mayinclude numerous aggregate encrypted device/user identifiers receivedover time from one or more mobile devices. After receiving the encrypteddevice/user identifier logs 136 a-b, each of the partner databaseproprietors 104 a-b decrypts its respective encrypted device/useridentifiers using its copy(ies) of the encryption key(s). The partnerdatabase proprietors 104 a-b then look up their users corresponding tothe decrypted device/user identifiers, and collect corresponding userinformation 102 a-b for those users for sending to the AME 108. Forexample, if the partner database proprietor 104 a is a wireless serviceprovider, the encrypted device/user identifier log 136 a includes IMEInumbers, and the wireless service provider accesses its subscriberrecords to find users having IMEI numbers matching the IMEI numbersreceived in the encrypted device/user identifier log 136 a. When theusers are identified, the wireless service provider copies the users'user information to the user information 102 a for delivery to the AME108.

FIG. 9 depicts another example system 900 to collect user information(e.g., the user information 102 a and 102 b) from distributed databaseproprietors 104 a and 104 b for associating with impressions of mediapresented at the mobile device 106. In the illustrated example of FIG.9, like reference numbers are used to refer to the same or similarcomponents as described above in connection with FIG. 1. In theillustrated example of FIG. 9, a data collector 912 is shown as beinglocated in the app program 116. For example, the data collector 912 mayinclude instructions coded in the app program 116 to collect data in themobile device 106. Alternatively, the data collector 912 may be aseparate program downloaded separate from the app program 116 as part ofthe app install package 114 from the app publisher 110.

In the illustrated example of FIG. 9, the data collector 912 isconfigured to collect the device/user identifier(s) 124 from the mobiledevice 106. The example data collector 912 sends the device/useridentifier(s) 124 to the app publisher 110 in the collected data 126,and it also sends the device/user identifier(s) 124 to the mediapublisher 120. The data collector 912 of the illustrated example doesnot collect the media ID 122 from the media 118 at the mobile device 106as the data collector 112 does in the example system 100 of FIG. 1.Instead, the media publisher 120 that publishes the media 118 to themobile device 106 retrieves the media ID 122 from the media 118 that itpublishes. The media publisher 120 then associates the media ID 122 tothe device/user identifier(s) 124 of the mobile device 106, and sendscollected data 902 to the app publisher 110 that includes the media ID122 and the associated device/user identifier(s) 124 of the mobiledevice 106. For example, when the media publisher 120 sends the media118 to the mobile device 106, it does so by identifying the mobiledevice 106 as a destination device for the media 118 using one or moreof the device/user identifier(s) 124. In this manner, the mediapublisher 120 can associate the media ID 122 of the media 118 with thedevice/user identifier(s) 124 of the mobile device 106 indicating thatthe media 118 was sent to the particular mobile device 106 forpresentation (e.g., to generate an impression of the media 118).

In the illustrated example, the app publisher 110 matches thedevice/user identifier(s) 124 from the collected data 902 to thedevice/user identifier(s) 124 from the collected data 126 to determinethat the media ID 122 corresponds to media (e.g., the media 118)presented on the mobile device 106 associated with the device/useridentifier(s) 124. The app publisher 110 of the illustrated example alsogenerates an ACR ID 128 based on the device/user identifier(s) 124 asdisclosed herein. The app publisher 110 then sends the impression data130, including the media ID 122 and the associated ACR ID 128, to theAME 108. The AME 108 can then send the encrypted device/user identifierlogs 136 a-b to the partner database proprietors 104 a-b to request theuser information 102 a-b as described above in connection with FIG. 1.

FIG. 10 depicts yet another example system 1000 to collect userinformation (e.g., the user information 102 a and 102 b) fromdistributed database proprietors 104 a and 104 b for associating withimpressions of media presented at the mobile device 106. In theillustrated example of FIG. 10, like reference numbers are used to referto the same or similar components as described above in connection withFIG. 1. In the illustrated example of FIG. 10, a data collector 1012 isshown as being located in the app program 116. For example, the datacollector 1012 may include instructions coded in the app program 116 tocollect data in the mobile device 106. Alternatively, the data collector1012 may be a separate program downloaded separate from the app program116 as part of the app install package 114 from the app publisher 110.

In the illustrated example of FIG. 10, the data collector 1012 isconfigured to collect the device/user identifier(s) 124 from the mobiledevice 106. The example data collector 1012 sends the device/useridentifier(s) 124 to the media publisher 120. The data collector 1012 ofthe illustrated example does not collect the media ID 122 from the media118 at the mobile device 106 as the data collector 112 does in theexample system 100 of FIG. 1. Instead, the media publisher 120 thatpublishes the media 118 to the mobile device 106 retrieves the media ID122 from the media 118 that it publishes. The media publisher 120 thenassociates the media ID 122 to the device/user identifier(s) 124 of themobile device 106, and generates the ACR ID 128 based on the device/useridentifier(s) 124 as disclosed herein. The media publisher 120 thensends the media impression data 130, including the media ID 122 and theACR ID 128, to the AME 108. For example, when the media publisher 120sends the media 118 to the mobile device 106, it does so by identifyingthe mobile device 106 as a destination device for the media 118 usingone or more of the device/user identifier(s) 124. In this manner, themedia publisher 120 can associate the media ID 122 of the media 118 withthe device/user identifier(s) 124 and the ACR ID 128 of the mobiledevice 106 indicating that the media 118 was sent to the particularmobile device 106 for presentation (e.g., to generate an impression ofthe media 118). In the illustrated example, after the AME 108 receivesthe impression data 130 from the media publisher 120, the AME 108 canthen send the encrypted device/user identifier logs 136 a-b to thepartner database proprietors 104 a-b to request the user information 102a-b as described above in connection with FIG. 1.

Although the media publisher 120 is shown separate from the apppublisher 110 in FIGS. 1, 9, and 10, the app publisher 110 may implementat least some of the operations of the media publisher 120 to send themedia 118 to the mobile device 106 for presentation. For example,advertisement, content, or other media providers may send media (e.g.,the media 118) to the app publisher 110 for publishing to the mobiledevice 106 via, for example, the app program 116 when it is executing onthe mobile device 106. In such examples, the app publisher 110implements the operations described above as being performed by themedia publisher 120.

In some examples, the media publisher 120 operates as a third-partymedia publisher relative to other traditional media publishers. In suchexamples, the media publisher 120 receives media from media providersand/or other traditional media publishers for publishing to electronicdevices (e.g., the mobile device 106) while tracking media impressionsof the published media (e.g., the media 118) and/or identities ofdevices to which media is published. That is, in addition to performingtraditional media publisher services of publishing media to electronicdevices, the media publisher 120 of the illustrated example additionallycollects media impression tracking information as discussed above inconnection with FIGS. 9 and 10. Thus, in some examples, the mediapublisher 120 is a third party that is contracted by traditional mediapublishers to provide media impression tracking capabilities forcollecting media impressions and user information (e.g., the userinformation 102 a-b) as disclosed herein.

In addition to associating user information (e.g., the user information102 a-b) with media IDs (e.g., the media ID 122) of published media,examples disclosed herein may additionally or alternatively be used toassociate user information with other types of information collectedfrom mobile devices representative of user interests and/or userbehaviors. For example, techniques disclosed herein may also be used tomonitor search terms provided by users at mobile devices, andassociating those search terms with user information of users thatprovide the search terms. Example search terms may be provided via appsdownloaded and installed on mobile devices, for searching information onthe Internet and/or products at stores, websites, etc. For example, asearch term may cause a search to be performed for information on theInternet, a search to be performed for a product, a search of a websiteto be performed, or a search for a website to be performed. Examplesystems that may be used to monitor search terms are described below inconnection with FIGS. 12-14. In the illustrated examples of FIGS. 12-14,like reference numbers are used to refer to the same or similarcomponents as described above in connection with FIG. 1.

FIG. 12 is an example system 1200 to collect user information (e.g., theuser information 102 a and 102 b) from distributed database proprietors104 a-b for associating with search terms (e.g., search terms 1210)provided by users at mobile devices (e.g., the mobile device 106). Inthe illustrated example of FIG. 12, a data collector 1206 is shown asbeing located in an app program 1204 downloaded to the mobile device 106in an app install package 1202 from the app publisher 110. For example,the data collector 1206 may include instructions coded in the appprogram 1204 to collect data in the mobile device 106. Alternatively,the data collector 1206 may be a separate program downloaded separatefrom the app program 1204 as part of the app install package 1202 fromthe app publisher 110.

In the illustrated example of FIG. 12, the app program 1204 providessearch functionality so that users may search, for example, informationon the Internet, products, services, etc. For example, when executing onthe mobile device 106, the app program 1204 provides a search field 1208for entering a search string including one or more search term(s) 1210.To provide the search functionality, the app program 1204 of theillustrated example sends the search term(s) 1210 to a search serviceprovider 1212. In this manner, the search service provider 1212 canperform the requested search, and return search results to the appprogram 1204 at the mobile device 106. In the illustrated example, thesearch service provider 1212 may be an Internet search engine (e.g.,Google, Yahoo!, Bing, etc.), an Internet portal website, a retailer,etc.

When a user provides the search term(s) 1210 in the search field 1208,the data collector 1206 sends the search term(s) 1210, and thedevice/user identifier(s) 124 to the app publisher 110 as collected data1214. The app publisher 110 can then generate the ACR ID 128 based onthe device/user identifier(s) 124 using example techniques disclosedherein, and send the search term(s) 1210 and the ACR ID 128 to the AME108 as user-interest data 1216. In other examples, the data collector1206 may be configured to send the search term(s) 1210 and the ACR ID128 (or the device/user identifier(s) 124) as the user-interest data1216 directly to the AME 108. The AME 108 can then send the encrypteddevice/user identifier logs 136 a-b to the partner database proprietors104 a-b to request the user information 102 a-b as described above inconnection with FIG. 1.

FIG. 13 depicts another example system 1300 to collect user information(e.g., the user information 102 a and 102 b) from distributed databaseproprietors 104 a-b for associating with search terms (e.g., the searchterm(s) 1210) provided by users at mobile devices. In the illustratedexample of FIG. 13, a data collector 1312 is shown as being located inthe app program 1204. For example, the data collector 1312 may includeinstructions coded in the app program 1204 to collect data in the mobiledevice 106. Alternatively, the data collector 1312 may be a separateprogram downloaded separate from the app program 1204 as part of the appinstall package 1202 from the app publisher 110.

In the illustrated example of FIG. 9, the data collector 1312 isconfigured to collect the device/user identifier(s) 124 from the mobiledevice 106. The example data collector 1312 sends the device/useridentifier(s) 124 to the app publisher 110 in the collected data 1214,and it also sends the device/user identifier(s) 124 to the searchprovider 1212. The data collector 1312 of the illustrated example doesnot collect the search terms 1210 from the search field 1208 at themobile device 106 as the data collector 1206 does in the example system1200 of FIG. 12. Instead, the search provider 1212 collects the searchterm(s) 1210 when received from the app program 1204. The searchprovider 1212 then associates the search term(s) 1210 with thedevice/user identifier(s) 124 of the mobile device 106, and sendscollected data 1302 to the app publisher 110 that includes the searchterm(s) 1210 and the associated device/user identifier(s) 124 of themobile device 106. For example, when the search provider 1212 providesservices to the mobile device 106, it does so by identifying the mobiledevice 106 using one or more of the device/user identifier(s) 124. Inthis manner, the search provider 1212 can associate the search term(s)1210 with the device/user identifier(s) 124 of the mobile device 106indicating which searches are performed for the particular mobile device106.

In the illustrated example, the app publisher 110 matches thedevice/user identifier(s) 124 from the collected data 1302 to thedevice/user identifier(s) 124 from the collected data 126 to determinethat the search term(s) 1210 correspond to a search provided for themobile device 106 associated with the device/user identifier(s) 124. Theapp publisher 110 of the illustrated example also generates an ACR ID128 based on the device/user identifier(s) 124 as disclosed herein. Theapp publisher 110 then sends the user-interest data 1216, including thesearch term(s) 1210 and the associated ACR ID 128, to the AME 108. TheAME 108 can then send the encrypted device/user identifier logs 136 a-bto the partner database proprietors 104 a-b to request the userinformation 102 a-b as described above in connection with FIG. 1.

FIG. 14 depicts yet another example system 1400 to collect userinformation (e.g., the user information 102 a and 102 b) fromdistributed database proprietors 104 a and 104 b for associating withthe search term(s) 1210 provided at the mobile device 106. In theillustrated example of FIG. 14, a data collector 1412 is shown as beinglocated in the app program 1204. For example, the data collector 1412may include instructions coded in the app program 1204 to collect datain the mobile device 106. Alternatively, the data collector 1412 may bea separate program downloaded separate from the app program 1204 as partof the app install package 1202 from the app publisher 110.

In the illustrated example of FIG. 14, the data collector 1412 isconfigured to collect the device/user identifier(s) 124 from the mobiledevice 106. The example data collector 1412 sends the device/useridentifier(s) 124 to the search provider 1212. The data collector 1412of the illustrated example does not collect the search term(s) 1210 fromthe search field 1208 at the mobile device 106 as the data collector1206 does in the example system 1200 of FIG. 12. Instead, the searchprovider 1212 retrieves the search term(s) 1210 when received from theapp program 1205 executing on the mobile device 106. The search provider1212 then associates the search term(s) 1210 to the device/useridentifier(s) 124 of the mobile device 106, and generates the ACR ID 128based on the device/user identifier(s) 124 as disclosed herein. Thesearch provider 1212 then sends the user-interest data 1216, includingthe search term(s) 1210 and the ACR ID 128, to the AME 108. For example,when the search provider 1212 provides search services to the mobiledevice 106, it does so by identifying the mobile device 106 using one ormore of the device/user identifier(s) 124. In this manner, the searchprovider 1212 can associate the search term(s) 1210 with the device/useridentifier(s) 124 and the ACR ID 128 of the mobile device 106 indicatingthat the search was performed for the particular mobile device 106. Inother examples, the data collector 1412 at the mobile device 106 may beconfigured to send the search term(s) 1210 and the ACR ID 128 (or thedevice/user identifier(s) 124) as the user-interest data 1216 directlyto the AME 108. In the illustrated example, after the AME 108 receivesthe user-interest data 1216 from the search provider 1212 (or from themobile device 106), the AME 108 can then send the encrypted device/useridentifier logs 136 a-b to the partner database proprietors 104 a-b torequest the user information 102 a-b as described above in connectionwith FIG. 1.

Although the search provider 1212 is shown separate from the apppublisher 110 in FIGS. 1, 9, and 10, the app publisher 110 may implementat least some operations of the search provider 1212 to receive thesearch term(s) 1210 from the mobile device 106. For example, the datacollector 1412 may send the search term(s) 1210 to the app publisher 110so that the app publisher 110 may forward the search term(s) 1210 on toa search provider. In such examples, the app publisher 110 implements atleast some of the operations described above as being performed by thesearch provider 1212.

FIG. 2 depicts an example apparatus 200 having an encryptor 202 toencrypt device and/or user identifiers (e.g., the device/useridentifier(s) 124 of FIG. 1), and having an encoder 204 to encode theencrypted device and/or user identifiers into an application campaignrating (ACR) identifier (e.g., the ACR ID 128 of FIGS. 1, 9, 10, and12-14). The encryptor 202 of the illustrated example is provided withencryption keys and partner database proprietor identifierscorresponding to the different partner database proprietors (e.g.,partner database proprietors 104 a-b of FIGS. 1, 9, 10, and 12-14) forwhich device/user identifiers 124 (FIGS. 1, 9, 10, and 12-14) can becollected from mobile devices. In the illustrated example, device and/oruser identifiers (e.g., the device/user identifier(s) 124 of FIGS. 1, 9,10, and 12-14) include an IMEI/MEID number 124 a, an Android ID 124 b, aMAC address 124 c, an OpenUDID 124 d, an ODIN identifier 124 e, a loginID 124 f, user agent data 124 g, a third-party 1 ID 124 h, and athird-party 2 ID 124 i. In the illustrated examples, the third-party 1ID 124 h and/or the third-party 2 ID 124 i may be identifiers oftargeted advertisement services, web analytics services, services thatcollect and store demographic information of users in association withunique identifiers (e.g., the third-party 1 ID 124 h and/or thethird-party 2 ID 124 i) of those users. The encryptor 202 of theillustrated example uses corresponding encryption keys to encrypt thedevice/user identifiers 124 to corresponding encrypted device/useridentifiers 208 a-i. In addition, the encryptor 202 also provides (e.g.,appends, prepends, or otherwise concatenates) corresponding partnerdatabase proprietor identifiers to corresponding ones of the encrypteddevice/user identifiers 208 a-i so that the AME 108 can identify partnerdatabase proprietors (e.g., the partner database proprietors 104 a-b ofFIGS. 1, 9, 10, and 12-14) to which it should send corresponding ones ofthe encrypted device/user identifiers 208 a-i. The encoder 204 of theillustrated example encodes the encrypted device/user identifiers 208a-i into the ACR ID 128. The ACR ID 128 is then sent to the AME 108.

The example apparatus 200 may be entirely or partially implemented atthe mobile device 106 (FIGS. 1, 9, 10, and 12-14), entirely or partiallyimplemented at the app publisher 110 (FIGS. 1, 9, 10, and 12-14) (orother collection entity), and/or entirely or partially implemented atthe media publisher 120 (FIGS. 1, 9, and 10) (or search provider 1212 ofFIGS. 12-14). In some examples, the encryptor 202 and the encoder 204may both be implemented in the mobile device 106, to generate the ACR ID128 and send the ACR ID 128 to the app publisher 110 (or othercollection entity) in the collected data 126 along with the media ID 122(and/or the search term(s) 1210). In other examples, the encryptor 202may be implemented at the mobile device 106, and the encoder 204 may beimplemented at the app publisher 110 (or other collection entity), atthe media publisher 120, and/or at the search provider 1212. Forexample, the encryptor 202 may be provided in encryption softwaredownloaded to the mobile device 106 as part of the data collector 112.In this manner, the encryptor 202 can encrypt the device/useridentifier(s) 124 at the mobile device 106, and send the encrypteddevice/user identifier(s) 208 a-i to the app publisher 110 (or othercollection entity), to the media publisher 120, and/or to the searchprovider 1212. The encoder 204 can then be used at the app publisher 110(or other collection entity), at the media publisher 120, and/or at thesearch provider 1212 to generate the ACR ID 128 by encoding theencrypted device/user identifier(s) 208 a-i into the ACR ID 128, and theapp publisher 110 (or other collection entity), the media publisher 120,and/or the search provider 1212 sends the ACR ID 128 to the AME 108along with the media ID 122 (e.g., as the impression data 130 of FIGS.1, 9, and 10) or the search term(s) 1210 (e.g., as the user-interestdata 1216).

In other examples, both of the encryptor 202 and the encoder 204 areimplemented at the app publisher 110 (or other collection entity), atthe media publisher 120, and/or at the search provider 1212. In suchother examples, the app publisher 110 (or other collection entity), themedia publisher 120, and/or the search provider 1212 receive(s) thedevice/user identifier(s) 124 from the mobile device 106. The apppublisher 110 (or other collection entity), the media publisher 120,and/or the search provider 1212 generate(s) the ACR ID 128 to includethe encrypted device/user identifier(s) 208 a-i. The app publisher 110(or other collection entity), the media publisher 120, and/or the searchprovider 1212 can then send the ACR ID 128 to the AME 108 along with themedia ID 122 (e.g., as the impression data 130 of FIGS. 1, 9, and 10) orthe search term(s) 1210 (e.g., as the user-interest data 1216 of FIGS.12-14).

FIG. 3 depicts an example apparatus 300 to decode encrypted deviceand/or user identifiers 208 a-i (FIG. 2) from the ACR ID 128 of FIGS. 1,2, 9, 10, and 12-14, and send one or more of the encrypted device and/oruser identifiers 208 a-i to corresponding partner database proprietors104 a-e to request user information 102 a-e associated with theencrypted device and/or user identifiers 208 a-i. The apparatus 300 ofthe illustrated example includes a decoder 302 to decode the encrypteddevice and/or user identifiers 208 a-i from the ACR ID 128. In theillustrated examples, the decoder 302 is implemented at the AME 108 ofFIG. 1 (e.g., at the server 132 of the AME 108). The decoder 302 of theillustrated example determines which of the partner database proprietors104 a-e correspond to which of the encrypted device/user identifiers 208a-i based on, for example, partner database proprietor identifiersprovided to the encrypted device/user identifiers 208 a-i by theencryptor 202 of FIG. 2. The decoder 302 then sends corresponding onesof the encrypted device and/or user identifiers 208 a-i to correspondingpartner database proprietors 104 a-e.

FIG. 4 depicts the example apparatus 300 of FIG. 3 decoding the ACR ID128 in an example in which the ACR ID 128 has some empty fields that donot contain any encrypted device and/or user identifiers. In theillustrated example of FIG. 4, the decoder 302 decodes the encrypteddevice and/or user identifiers 208 a and 208 h which are located in theACR ID 128, sends the encrypted device and/or user identifier 208 a tothe corresponding partner database proprietor 208 a, and sends theencrypted device and/or user identifier 208 h to the correspondingpartner database proprietor 208 h. Thus, although nine encrypted deviceand/or user identifiers 208 a-i are shown in FIG. 3, in some examples,fewer (e.g., less than nine) encrypted device and/or user identifiersmay be located in the ACR ID 128 such as in FIG. 4. In yet otherexamples, more than nine encrypted device and/or user identifiers may beencoded into the ACR ID 128.

While example manners of implementing the apparatus 200 and theapparatus 300 have been illustrated in FIGS. 2-4, one or more of theelements, processes and/or devices illustrated in FIGS. 2-4 may becombined, divided, re-arranged, omitted, eliminated and/or implementedin any other way. Further, the example encryptor 202, the exampleencoder 204, the example decoder 302 and/or, more generally, the exampleapparatus 200 and/or 300 may be implemented using hardware, software,firmware and/or any combination of hardware, software and/or firmware.Thus, for example, any of the example encryptor 202, the example encoder204, the example decoder 302 and/or, more generally, the exampleapparatus 200 and/or 300 could be implemented using one or more analogor digital circuit(s), logical circuit(s), programmable processor(s),application specific integrated circuit(s) (ASIC(s)), programmable logicdevice(s) (PLD(s)) and/or field programmable logic device(s) (FPLD(s)),etc. When reading any of the apparatus or system claims of this patentto cover a purely software and/or firmware implementation, at least oneof the example encryptor 202, the example encoder 204, and/or theexample decoder 302 is/are hereby expressly defined to include atangible computer readable storage device or storage disk such as amemory, a digital versatile disk (DVD), a compact disk (CD), a Blu-raydisk, etc. storing the software and/or firmware. Further still, theexample apparatus 200 of FIG. 2 and/or the example apparatus 300 ofFIGS. 3 and 4 may include one or more elements, processes and/or devicesin addition to, or instead of, those illustrated in FIGS. 2-4, and/ormay include more than one of any or all of the illustrated elements,processes and devices.

FIGS. 5, 11, 15, 6, and 7 are flow diagrams representative of machinereadable instructions that may be executed to track media impressionsand/or search terms and collect distributed user information for themedia impressions and/or search terms using examples disclosed herein.In the examples of FIGS. 5, 11, 15, 6, and 7, operations and processesare shown that represent machine readable instructions comprising one ormore programs for execution by one or more processors such as theprocessor 812 shown in the example computer 800 discussed below inconnection with FIG. 8. The program(s) may be embodied in softwarestored on a tangible computer readable storage medium such as a CD-ROM,a floppy disk, a hard drive, a digital versatile disk (DVD), a Blu-raydisk, or a memory associated with the processor 812, but the entireprogram(s) and/or parts thereof could alternatively be executed by adevice other than processor(s) such as the processor 812 and/or embodiedin firmware or dedicated hardware. Further, although the exampleprogram(s) is/are disclosed herein with reference to the illustratedexamples of FIGS. 5, 11, 15, 6, and 7, many other methods ofimplementing example apparatus 200 and 300 disclosed herein mayalternatively be used. For example, the order of execution of theprocesses and/or operations may be changed, and/or some of the processesand/or operations disclosed herein may be changed, eliminated, orcombined.

As mentioned above, example processes and/or operations of FIGS. 5, 11,15, 6, and 7 may be implemented using coded instructions (e.g., computerand/or machine readable instructions) stored on a tangible computerreadable storage medium such as a hard disk drive, a flash memory, aread-only memory (ROM), a compact disk (CD), a digital versatile disk(DVD), a cache, a random-access memory (RAM) and/or any other storagedevice or storage disk in which information is stored for any duration(e.g., for extended time periods, permanently, brief instances, fortemporarily buffering, and/or for caching of the information). As usedherein, the term tangible computer readable storage medium is expresslydefined to include any type of computer readable storage device and/orstorage disk and to exclude propagating signals and transmission media.As used herein, “tangible computer readable storage medium” and“tangible machine readable storage medium” are used interchangeably.Additionally or alternatively, the example processes and/or operationsof FIGS. 5, 11, 15, 6, and 7 may be implemented using coded instructions(e.g., computer and/or machine readable instructions) stored on anon-transitory computer and/or machine readable medium such as a harddisk drive, a flash memory, a read-only memory, a compact disk, adigital versatile disk, a cache, a random-access memory and/or any otherstorage device or storage disk in which information is stored for anyduration (e.g., for extended time periods, permanently, for briefinstances, for temporarily buffering, and/or for caching of theinformation). As used herein, the term non-transitory computer readablemedium is expressly defined to include any type of computer readablestorage device and/or storage disk and to exclude propagating signalsand transmission media. As used herein, when the phrase “at least” isused as the transition term in a preamble of a claim, it is open-endedin the same manner as the term “comprising” is open ended.

FIG. 5 is a flow diagram of an example process that may be used tocollect media identifiers (e.g., the media ID 122 of FIG. 1) and deviceand/or user identifiers (e.g., the device/user identifiers 124 of FIGS.1 and 2) at mobile devices (e.g., the mobile device 106 of FIG. 1). Insome examples, instead of or in addition to collecting mediaidentifiers, the example process of FIG. 5 may additionally oralternatively be used to collect search terms (e.g., the search term(s)1210 of FIG. 12). In the illustrated example, the example process ofFIG. 5 is performed at the mobile device 106. However, the exampleprocess of FIG. 5 may be performed at any other device.

Initially, the data collector 112 (FIG. 1) determines whether it shouldcollect data (block 502). For example, the app program 116 (FIG. 1) maytrigger the data collector 112 to collect data when the app program 116presents media (e.g., the media 118 of FIG. 1) or receives one or moresearch term(s) (e.g., the search term(s) 1210 of FIGS. 12-14). When thedata collector 112 determines at block 502 that it should collect data,the data collector 112 retrieves the media ID 122 from the media 118,and/or the search term(s) 1210 (block 504). The data collector 112 alsocollects one or more of the device/user identifier(s) 124 from themobile device 106 (block 506). The data collector 112 locates the mediaID 122, and/or the search term(s) 1210, and the device/useridentifier(s) 124 in a collected data message (e.g., the collected data126 of FIG. 1 and/or the collected data 1214 of FIG. 12) (block 508).The data collector 112 sends the media ID 122, and/or the search term(s)1210, and the device/user identifier(s) 124 to a collection entity(block 510). For example, the data collector 112 sends the media ID 122,and/or the search term(s) 1210, and the device/user identifier(s) 124 asthe collected data 126 (FIG. 1) and/or 1214 (FIG. 12) to the appspublisher 110 of FIG. 1. The example process of FIG. 5 then ends.

In some examples in which the encryptor 202 of FIG. 2 is provided in thedata collector 112, the encryptor 202 encrypts the device/useridentifier(s) 124 at block 508 to generate one or more of the encrypteddevice/user identifier(s) 208 a-i of FIG. 2. In such some examples, thedata collector 112 locates the encrypted device/user identifier(s) 208a-i and the media ID 122, and/or the search term(s) 1210, in thecollected data 126 and/or 1214 at block 508. In some examples in whichthe encoder 204 is also provided in the data collector 112, the encoder204 generates the ACR ID 128 of FIGS. 1-4 by encoding the encrypteddevice/user identifier(s) 208 a-i into the ACR ID 128 at block 508. Insuch some examples, the data collector 112 locates the ACR ID 128 andthe media ID 122, and/or the search term(s) 1210, in the collected data126 and/or 1214 at block 508. An example process that may be used toencrypt the device/user identifier(s) 124 and encode the encrypteddevice/user identifiers 208 a-i is described below in connection withFIG. 6.

FIG. 11 is a flow diagram of an example process that may be used tocollect media identifiers (e.g., the media ID 122 of FIGS. 1, 9, and 10)and device and/or user identifiers (e.g., the device/user identifier(s)124 of FIGS. 1, 9, and 10) at a media publisher (e.g., the mediapublisher 120 of FIGS. 1, 9, and 10). In the illustrated example, theexample process of FIG. 11 is performed by a processor system (e.g., aserver) at the media publisher 120 in connection with the example system900 of FIG. 9 and/or the example system 1000 of FIG. 10. However, theexample process of FIG. 11 may be performed by any other device.

Initially, the media publisher 120 receives the device/useridentifier(s) 124 (block 1102) from, for example, the data collector 912of FIG. 9 or the data collector 1012 of FIG. 10. For example, the mediapublisher 120 may receive the device/user identifier(s) 124 in an HTTPheader of an HTTP request from the mobile device 106. The mediapublisher 120 determines whether it should serve media (e.g., the media118 of FIGS. 9 and 10) (block 1104) to, for example, the mobile device106. For example, the media publisher 120 may receive a media serverequest from the mobile device 106 that was generated by the app program116 when executing on the mobile device 106. In the illustrated example,the media serve request is a request to serve an advertisement or othermedia to the mobile device 106 for presenting while the app program 116is executing. In some examples, the media serve request is received atblock 1102 when the media publisher 120 receives the device/useridentifier(s) 124. For example, media publisher 120 may receive themedia serve request from the mobile device 106 in the HTTP request thatincludes the device/user identifier(s) 124 in its HTTP header.

When the media publisher 120 determines at block 1104 that it shouldserve media (e.g., the media 118), the media publisher 120 retrieves themedia ID 122 from the media 118 to be served (block 1106). The mediapublisher 120 serves the media 118 (block 1108). For example, the mediapublisher 120 may use one or more of the device/user identifier(s) 124received at block 1102 to identify the mobile device 106 as a receivingdevice of the served media 118. The media publisher 120 locates themedia ID 122 and the device/user identifier(s) 124 in a message (block1110). For example, in the example system 900 of FIG. 9, the mediapublisher 120 locates the media ID 122 and the device/user identifier(s)124 in the collected data message 902. Alternatively, in the examplesystem 1000 of FIG. 10 in which the apparatus 200 of FIG. 2 isimplemented at the media publisher 120, the media publisher 120generates the ACR ID 128 (FIGS. 10 and 2) based on the device/useridentifier(s) 124, and locates the media ID 122 and the ACR ID 128 inthe impression data 130 at block 1110. The media publisher 120 sends themedia ID 122 and the device/user identifier(s) 124 (block 1112), forexample, as the collected data 902 to the app publisher 110 as shown inFIG. 9, or as the impression data 130 to the AME 108 as shown in FIG.10. The example process of FIG. 11 then ends.

FIG. 15 is a flow diagram of an example process that may be executed tocollect search terms (e.g., the search term(s) 1210 of FIGS. 12-14) anddevice and/or user identifiers (e.g., the device/user identifiers 124 ofFIGS. 12-14) at a search provider (e.g., the search provider 1212 ofFIGS. 12-14). In the illustrated example, the example process of FIG. 15is performed by a processor system (e.g., a server) at the searchprovider 1212 in connection with the example system 1300 of FIG. 13and/or the example system 1400 of FIG. 14. However, the example processof FIG. 15 may be performed by any other device.

Initially, the search provider 1212 receives the device/useridentifier(s) 124 (block 1502) from, for example, the data collector1312 of FIG. 13 or the data collector 1412 of FIG. 14. For example, thesearch provider 1212 may receive the device/user identifier(s) 124 in anHTTP header of an HTTP request from the mobile device 106. The searchprovider 1212 receives the search term (s) 1210 from the app program1204 (block 1504). The search provider 1212 serves search results 1506(block 1506). For example, the search provider 1212 may use one or moreof the device/user identifier(s) 124 received at block 1502 to identifythe mobile device 106 as a receiving device of the search results. Thesearch provider 1212 locates the search term(s) 1210 and the device/useridentifier(s) 124 in a message (block 1508). For example, in the examplesystem 1300 of FIG. 13, the search provider 1212 locates the searchterm(s) 1210 and the device/user identifier(s) 124 in the collected datamessage 1302. Alternatively, in the example system 1400 of FIG. 14 inwhich the apparatus 200 of FIG. 2 is implemented at the search provider1212, the search provider 1212 generates the ACR ID 128 (FIGS. 14 and 2)based on the device/user identifier(s) 124, and locates the searchterm(s) 1210 and the ACR ID 128 in the user-interest data 1216 at block1508. The search provider 1212 sends the search term(s) 1210 and thedevice/user identifier(s) 124 (block 1510), for example, as thecollected data 1302 to the app publisher 110 as shown in FIG. 13, or asthe user-interest data 1216 to the AME 108 as shown in FIG. 14. Theexample process of FIG. 15 then ends.

FIG. 6 is a flow diagram of an example process to encrypt device and/oruser identifiers (e.g., the device/user identifier(s) 124 of FIGS. 1 and2), and to encode encrypted device and/or user identifiers (e.g., theencrypted device/user identifier(s) 208 a-i of FIGS. 2-4) into the ACRID 128 of FIGS. 1-4. The example process of FIG. 6 may be performedwholly or partially at the app publisher 110 of FIGS. 1, 9, and 10 (oranother collection entity), wholly or partially at the mobile device 106(e.g., at block 508 of the example process of FIG. 5), wholly orpartially at the media publisher 120 of FIGS. 1, 9, and 10, and/orwholly or partially at the search provider 1212 of FIGS. 12-14. In someexamples, operations performed by the encryptor 202 (FIG. 2) may beperformed at the mobile device 106, and operations performed by theencoder 204 (FIG. 2) may be performed at the app publisher 110, at themedia publisher 120, and/or at the search provider 1212.

Initially, the encryptor 202 (FIG. 2) receives one or more of thedevice/user identifier(s) 124 (FIGS. 1 and 2) (block 602). The encryptor202 encrypts the device/user identifier(s) 124 (block 604) to generatethe encrypted device/user identifier(s) 208 a-i (FIG. 2). In theillustrated example, the encryptor 202 provides corresponding partnerdatabase proprietor identifiers to corresponding ones of the encrypteddevice/user identifier(s) 208 a-i (block 606), for example, byappending, prepending, concatenating, or otherwise associating thepartner database proprietor identifiers to or with the encrypteddevice/user identifier(s) 208 a-i so that the partner databaseproprietor identifiers are accessible to the AME 108 without decryptingthe encrypted device/user identifier(s) 208 a-i. The encoder 204 (FIG.2) encodes the encrypted device/user identifier(s) 208 a-i into the ACRID 128 (block 608). In the illustrated example, the encoder 204associates the ACR ID 128 with the corresponding media ID 122, and/orthe search term(s) 1210 (block 610). The encoder 204 sends the ACR ID128 and the media ID 122, and/or the search term(s) 1210, to the AME 108(block 612), for example, in the impression data 130 (FIGS. 1, 9, and10). In some examples, the media ID 112 and/or the search term(s) 1210are encrypted prior to transmission. The example process of FIG. 6 thenends.

FIG. 7 is a flow diagram of an example process that may be used todecode encrypted device and/or user identifiers (e.g., the encrypteddevice/user identifiers 208 a-i of FIGS. 2-4) from the ACR ID 128 ofFIGS. 1-4, and collect user information associated with the encrypteddevice and/or user identifiers from one or more corresponding partnerdatabase proprietor(s) (e.g., one or more of the partner databaseproprietors 102 a-e of FIGS. 1, 3, and 4). The example process of FIG. 7may be performed at the AME 108 (FIG. 1), for example, by the server 132(FIG. 1).

Initially, the server 132 receives the ACR ID 128 and the associatedmedia ID 122, and/or the search term(s) 1210 (block 702). For example,the server 132 may receive the ACR ID 128 and the media ID 122 in theimpression data 130 from the app publisher 110, from the media publisher120, and/or from the mobile device 106 of FIGS. 1, 9, and 10.Additionally or alternatively, the server 132 may receive the ACR ID 128and the search term(s) 1210 in the user-interest data 1216 from the apppublisher 110, from the search provider 1212, and/or from the mobiledevice 106 of FIGS. 12-14. The decoder 302 (FIGS. 3 and 4) decodes oneor more of the encrypted device/user identifier(s) 208 a-i from the ACRID 128 (block 704). The decoder 302 sends corresponding ones of theencrypted device/user identifier(s) 208 a-i to corresponding ones of thepartner database proprietor(s) 102 a-e (block 706), for example, basedon partner database proprietor identifiers provided to or associatedwith the encrypted device/user identifiers 208 a-i by the encryptor 202of FIG. 2 at block 606 of FIG. 6. The server 132 receives one or more ofthe user information 102 a-e from one or more of the partner databaseproprietor(s) 102 a-e (block 708). The server 132 logs a mediaimpression for the media ID 122 (block 710). In addition, the server 132associates the user information from at least one of the one or moreuser information 102 a-e with the logged impression for the media ID122, and/or with the search term(s) 1210 (block 712). The exampleprocess of FIG. 7 then ends.

FIG. 8 is a block diagram of an example computer 800 capable ofexecuting the instructions of FIGS. 5-7, 11, and 15. The computer 800can be, for example, a server, a personal computer, or any other type ofcomputing device. The system 800 of the illustrated example includes aprocessor 812. For example, the processor 812 can be implemented by oneor more microprocessors or controllers from any desired family ormanufacturer.

The processor 812 includes a local memory 813 (e.g., a cache) and is incommunication with a main memory including a volatile memory 814 and anon-volatile memory 816 via a bus 818. The volatile memory 814 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM)and/or any other type of random access memory device. The non-volatilememory 816 may be implemented by flash memory and/or any other desiredtype of memory device. Access to the main memory 814, 816 is controlledby a memory controller.

The computer 800 also includes an interface circuit 820. The interfacecircuit 820 may be implemented by any type of interface standard, suchas an Ethernet interface, a universal serial bus (USB), and/or a PCIexpress interface.

One or more input devices 822 are connected to the interface circuit820. The input device(s) 822 permit a user to enter data and commandsinto the processor 812. The input device(s) can be implemented by, forexample, a keyboard, a mouse, a touchscreen, a track-pad, a trackball,isopoint and/or a voice recognition system.

One or more output devices 824 are also connected to the interfacecircuit 820. The output devices 824 can be implemented, for example, bydisplay devices (e.g., a liquid crystal display, a cathode ray tubedisplay (CRT), a printer and/or speakers). The interface circuit 820,thus, typically includes a graphics driver card.

The interface circuit 820 also includes a communication device such as amodem or network interface card to facilitate exchange of data withexternal computers via a network 826 (e.g., an Ethernet connection, adigital subscriber line (DSL), a telephone line, coaxial cable, acellular telephone system, etc.).

The computer 800 also includes one or more mass storage devices 828 forstoring software and data. Examples of such mass storage devices 828include floppy disk drives, hard drive disks, compact disk drives anddigital versatile disk (DVD) drives.

Coded instructions 832 representative of machine readable instructionsof FIGS. 5-7, 11, and 15 may be stored in the mass storage device 828,in the volatile memory 814, in the non-volatile memory 816, and/or on aremovable storage medium such as a CD or DVD.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

1. A method comprising: receiving a plurality of encrypted identifiersand a media identifier collected at a mobile device, the encryptedidentifiers identifying at least one of the mobile device or a user ofthe mobile device, and the media identifier indicative of mediapresented at the mobile device; sending a first one of the encryptedidentifiers to a first database proprietor associated with the first oneof the encrypted identifiers; sending a second one of the encryptedidentifiers to a second database proprietor associated with the secondone of the encrypted identifiers; receiving first user informationassociated with the first one of the encrypted identifiers from thefirst database proprietor; receiving second user information associatedwith the second one of the encrypted identifiers from the seconddatabase proprietor; and associating at least one of the first userinformation or the second user information with a media impressionlogged for the media identifier.
 2. A method as defined in claim 1,wherein the first database proprietor is a social network service, thefirst encrypted identifier is a username of the user registered with thesocial network service, and the first user information is demographicinformation corresponding to the user and stored by the social networkservice.
 3. A method as defined in claim 2, wherein the second databaseproprietor is a wireless service provider of the mobile device, thesecond encrypted identifier is a device identifier used by the wirelessservice provider to identify the mobile device and to associate thesecond user information with the user of the mobile device, and thesecond user information is demographic information corresponding to theuser and stored by the wireless service provider.
 4. A method as definedin claim 1, wherein receiving the plurality of encrypted identifierscomprises receiving the plurality of encrypted identifiers encoded in asingle identifier from the mobile device.
 5. A method as defined inclaim 1, wherein receiving the plurality of encrypted identifierscomprises receiving database proprietor identifiers in association withcorresponding ones of the encrypted identifiers, and further comprising:determining to send the first one of the encrypted identifiers to thefirst database proprietor based on a first one of the databaseproprietor identifiers associated with the first one of the encryptedidentifiers and indicative of the first database proprietor; anddetermining to send the second one of the encrypted identifiers to thesecond database proprietor based on a second one of the databaseproprietor identifiers associated with the second one of the encryptedidentifiers and indicative of the second database proprietor.
 6. Anapparatus comprising: a decoder to: obtain encrypted identifiersidentifying at least one of the mobile device or a user of the mobiledevice, and send respective ones of the encrypted identifiers tocorresponding database proprietors; and a server to: receive userinformation corresponding to the respective ones of the encryptedidentifiers from the corresponding database proprietors, and associatethe user information with a search term collected at the mobile device.7. An apparatus as defined in claim 6, wherein the decoder is further todecode information from a mobile device into the respective ones of theencrypted identifiers.
 8. An apparatus as defined in claim 6, whereinthe server is separate from the mobile device and in communication withthe mobile device.
 9. An apparatus as defined in claim 6, wherein thedatabase proprietors include a social network service and a wirelessservice provider, a first one of the encrypted identifiers comprising ausername of the user registered with the social network service, and asecond one of the encrypted identifiers comprising a device identifierused by the wireless service provider to identify the mobile device. 10.An apparatus as defined in claim 9, wherein the user informationincludes first demographic information of the user stored by the socialnetwork service, and second demographic information of the user storedby the wireless service provider.
 11. An apparatus as defined in claim6, wherein the search term corresponds to a search performed at themobile device to at least one of search information on the Internet,search for a product, search for a website, or search a website.
 12. Anapparatus as defined in claim 6, wherein the decoder is to send theencrypted identifiers to the corresponding database proprietor based onrespective database proprietor identifiers received in association withcorresponding ones of the encrypted identifiers, the respective databaseproprietor identifiers identifying corresponding ones of the databaseproprietors. 13.-19. (canceled)
 20. A method to monitor usage of amobile device, the method comprising: installing an application having adata collector on a mobile device; collecting, via the data collector, amedia identifier indicative of media presented at the mobile device;encrypting a user identifier that identifies the user of the mobiledevice, the encrypting of the user identifier based on a firstencryption key corresponding to a first database proprietor having firstuser information associated with the user identifier; encrypting adevice identifier that identifies the mobile device, the encrypting ofthe device identifier based on a second encryption key corresponding toa second database proprietor having second user information associatedwith the device identifier; and sending the encrypted user identifier,the encrypted device identifier, and the media identifier to a datacollection server.
 21. A method as defined in claim 20, furthercomprising encoding the encrypted user identifier and the encrypteddevice identifier in a single identifier, wherein sending the encrypteduser identifier and the encrypted device identifier to the datacollection server comprises sending the single identifier to the datacollection server.
 22. A method as defined in claim 20, furthercomprising associating a first database proprietor identifier with theencrypted user identifier, and associating a second database proprietoridentifier with the encrypted device identifier, the first databaseproprietor identifier indicative of the encrypted user identifiercorresponding to the first database proprietor, and the second databaseproprietor identifier indicative of the encrypted device identifiercorresponding to the second database proprietor.
 23. A method as definedin claim 20, wherein the first database proprietor is a social networkservice, and the second database proprietor is a wireless serviceprovider.
 24. A method as defined in claim 20, wherein the first andsecond user information comprise demographic information collected fromthe user of the mobile device by the first and second databaseproprietors. 25.-36. (canceled)